Use Case Descriptions
ACTIONS
kick:
Participating actors-
initiated by user
communicates with rcssserver
Entry conditions-
kick
key is pressed or another action calls for
kick funtionality
Flow of events-
-user presses kick key or
an action uses kick
-kick message is sent to
rcssserver with power and direction relative to mouse position
Exit conditions-
none
Special requirements-
the ball has to be kickable
dash:
Participating actors-
communicates with rcssserver
Entry conditions-
another action(e.g. run)
calls for dash funtionality
Flow of events-
-an action calls for dash
functionality
-dash message is sent to
rcssserver with required power
Exit conditions-
none
Special requirements-
none
turn:
Participating actors-
initiated by user
communicates with rcssserver
Entry conditions-
turn
key is pressed or another action calls for
turn funtionality
Flow of events-
-user presses turn key or
an action uses turn
-
message is sent to rcssserver with moment relative to mouse
position
Exit conditions-
none
Special requirements-
none
run:
includes dash
Participating actors-
initiated by user
Entry conditions-
run
key is pressed
Flow of events-
-user presses run key
-dash is called every cycle
with power relative to mouse position
Exit conditions-
user releases run key
Special requirements-
trackingRun:
includes turn
extends run
Participating actors-
initiated by user
Entry conditions-
user presses trackingRun
key
Flow of events-
-same as run, except that
turn is used to face the current
mouse position before every dash
Exit conditions-
user releases trackingRun
key
Special requirements-
faceBall:
includes turn
Participating actors-
initiated by user
Entry conditions-
user presses faceBall key
Flow of events-
-if user can't see the ball, he/she turns around until the ball is in
their vision cone
-once the ball is visible, the user turns to face the ball
Exit conditions-
user is facing ball OR user has done a full 360deg
turn and not found the ball
Special requirements-
chaseBall:
includes faceBall
includes dash
Participating actors-
initiated by user
Entry conditions-
user presses chaseBall key
Flow of events-
-faceBall is called if the
ball is not visible
-dash towards the ball repeatedly
with power relative to the distance from the ball
-if angle to ball changes between dashes,
faceBall again and continue dashing
Exit conditions-
user reaches the ball OR user presses
chaseBall key again
Special requirements-
pass:
includes kick
Participating actors-
initiated by user
Entry conditions-
ball is kickable, teammate is in range & user presses
pass key
Flow of events-
-pass command given with
target player as an argument(how is yet to be decided)
-ball is kicked in the direction of the target player with enough power
to reach them
note: The final implementation for passing is yet to be decided upon.
It will be a choice between a learned passing algorithm and
a hardcoded algorithm.
Exit conditions-
ball is kicked OR pass is
aborted
Special requirements-
shoot:
includes kick
Participating actors-
initiated by user
Entry conditions-
ball is kickable, goal is in range & user presses
shoot key
Flow of events-
-user presses shoot key
-ball is kicked towards optimal location on goal with high power
Exit conditions-
ball is kicked OR shoot is
aborted
Special requirements-
dribble:
includes kick,
dash & turn
Participating actors-
initiated by user
Entry conditions-
ball is kickable & user presses
dribble key
Flow of events-
-user presses dribble key
-ball is kicked a short distance with direction and power relative to
the mouse position
-user dashes in the same direction the ball was kicked
-the above two steps are repeated until dribbling stops
Exit conditions-
user releases dribble key
OR posession of the ball is lost
Special requirements-
evade:
extends dribble
Participating actors-
initiated by user
Entry conditions-
user is dribbling & user presses
evade key
Flow of events-
-user presses one of two evasion keys
-user kicks the ball lightly at an angle of 90deg(direction determined
by user)
-user turns to face the ball
-user dashes after the ball
-user turns to face forwards again
Exit conditions-
Special requirements-
SENSES(descriptions incomplete)
see:
Participating actors-
initiated by rcssserver
communicates with user
Entry conditions-
Flow of events-
Exit conditions-
Special requirements-
hear:
Participating actors-
initiated by rcssserver
communicates with user
Entry conditions-
Flow of events-
Exit conditions-
Special requirements-
senseBody:
Participating actors-
initiated by rcssserver
communicates with user
Entry conditions-
Flow of events-
Exit conditions-
Special requirements-